package cn.iocoder.yudao.module.statistics.controller.admin.shareprofit.vo;

import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.validation.InEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.util.List;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 门店交易合伙人分润分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class StoreTradeShareProfitPageReqVO extends PageParam {

    @Schema(description = "店铺ID", example = "18319")
    private Long storeId;

    @Schema(description = "店铺名称", example = "万民医养")
    private String storeName;

    @Schema(description = "门店状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @InEnum(CommonStatusEnum.class)
    private Integer status;

    @Schema(description = "店铺ID集合", example = "18319")
    private List<Long> storeIds;

    @Schema(description = "合伙人ID", example = "1")
    private Long partnerId;

    @Schema(description = "合伙人名称", example = "赵六")
    private String partnerName;

    @Schema(description = "合伙人手机号", example = "15021933598")
    private String phone;

    @Schema(description = "合伙人ID集合", example = "1")
    private List<Long> partnerIds;

    @Schema(description = "统计日期")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDate[] reportDate;

    @Schema(description = "合伙人类型：1-LP发起人；2-LP合伙人；", example = "1")
    private Integer partnerType;

}